package com.puzzlebazar.client.puzzle.model;



public interface MoveVisitor {
	
	/**
	 * Visitor for a generic move. Subclass can override as a "catch all". Any move type
	 * that is not handled by the visitor will end up here. The default implementation
	 * does nothing.
	 * 
	 * @param move The move to visit
	 * @throws Exception
	 */
	public void visitMove( Move move ) throws Exception;
	
	public void visitMoveList( MoveList move ) throws Exception;

	public void visitMoveClearPuzzle( MoveClearPuzzle move ) throws Exception;
	
}
